ִ̣(߶)
    GameSrvProcessUserHuman̴߳Ϣ
UserInfoListбεÿUserInfoOperateев; pUserInfo->Operate()m_pxPlayerObject->Operate()á
жif (!m_fIsDead)_MSG_FAILϢǰ濴ϢǱȴġWalkTo_MSG_GOODϢͻˡ
WalkTọ
1 WalkNextPos ֵ˸λá
2 WalkXY߶һֵС
CheckDoorEventpMapCellInfo->m_sLightNEvent״̬
a) Ҫƶλһ _DOOR_OPEN
b) һ _DOOR_NOT
c) һŲԴ򿪷 _DOOR_MAPMOVE_BACK_DOOR_MAPMOVE_FRONTǰ/ƶ
3 _DOOR_OPENSM_DOOROPENϢΧҡ
4 m_pMap->CanMoveƶMoveToMovingObjectӵǰƶһ㡣AddRefMsg(RM_WALK)Χҡ
    AddRefMsgںķXY꣬ԼΪΧ26*26棬ͼԪĻ֣еԪٱеԪڵб㲥RM_WALKϢ
 
ͻִ̣(˱߶)
1. _MSG_FAIL ɿͻCGameProcess::OnProcPacketNotEncode
     m_xMyHero.SetOldPosition();
ˣ  SetMotionFrame(_MT_STAND
           AdjustMyPostion(); ػͼ
           m_bMotionLock = m_bInputLock = FALSE;
     SetMotionFrame(_MT_HORSESTAND
            AdjustMyPostion(); ػͼ
            m_bMotionLock = m_bInputLock = FALSE;
   2. _MSG_GOOD, ɿͻCGameProcess::OnProcPacketNotEncodem_xMyHero.m_bMotionLock = FALSE;
 
ͻִ̣()
 1ң
     ˣ SetMotionFrame(_MT_WALK, bDir);
     SetMotionFrame(_MT_HORSEWALK, bDir);
     m_bMoveSpeed = _SPEED_WALK;
     SetMoving(); m_shShiftPixelX m_shShiftPixelYꡣ
 2NPC
SetMotionFrame(_MT_MON_WALK, bDir);
     m_bMoveSpeed = _SPEED_WALK;
     SetMoving(); m_shShiftPixelX m_shShiftPixelYꡣ
CGameProcess::RenderObject->DrawActor(m_shShiftPixelX m_shShiftPixelY)ػ淢ϢңNPCλá
 
